package com.bbva.general.dao.jdbc;

import java.sql.Types;
import java.util.HashMap;
import java.util.Map;
import javax.sql.DataSource;
import org.springframework.jdbc.core.SqlParameter;
import org.springframework.jdbc.object.StoredProcedure;
import com.bbva.general.entities.ArchivoCarga;

public class ArchivoCargaDAOActualizar extends StoredProcedure {
private static String strProcedure = "IITG.SP_ARCHIVO_CARGA_ACTUALIZAR";
	
	public ArchivoCargaDAOActualizar(DataSource DS){
		super(DS,strProcedure);
		declareParameter(new SqlParameter("pIDARCHIVO", Types.INTEGER));
		declareParameter(new SqlParameter("pNOMBRE_ARCHIVO", Types.VARCHAR));
		declareParameter(new SqlParameter("pEXTENSION_ARCHIVO", Types.VARCHAR));
		declareParameter(new SqlParameter("pMINUTO_EJECUCION", Types.VARCHAR)); 
		declareParameter(new SqlParameter("pHORA_EJECUCION", Types.VARCHAR));   
		declareParameter(new SqlParameter("pDIA_MES_EJECUCION", Types.VARCHAR));
		declareParameter(new SqlParameter("pMES_EJECUCION", Types.VARCHAR)); 
		declareParameter(new SqlParameter("pDIA_SEMANA_EJECUCION", Types.VARCHAR));
		declareParameter(new SqlParameter("pUSUARIO_MODIFICACION", Types.CHAR));
		declareParameter(new SqlParameter("pDESCRIPCION_ARCHIVO", Types.VARCHAR));
		declareParameter(new SqlParameter("pRUTA_ARCHIVO", Types.VARCHAR));		
		compile();
	}
	
	@SuppressWarnings(value={"unchecked"})
	public void Actualizar(ArchivoCarga obj){
		Map parametros = new HashMap(11);
		parametros.put("pIDARCHIVO", Integer.parseInt(obj.getIdArchivo()));
		parametros.put("pNOMBRE_ARCHIVO", obj.getNombreArchivo());
		parametros.put("pEXTENSION_ARCHIVO", obj.getExtensionArchivo());
		parametros.put("pMINUTO_EJECUCION", obj.getMinutoEjecucion());
		parametros.put("pHORA_EJECUCION", obj.getHoraEjecucion());
		parametros.put("pDIA_MES_EJECUCION", obj.getDiaMesEjecucion());
		parametros.put("pMES_EJECUCION", obj.getMesEjecucion());		
		parametros.put("pDIA_SEMANA_EJECUCION", obj.getDiaSemanaEjecucion());
		parametros.put("pUSUARIO_MODIFICACION", obj.getUsuarioModificacion());
		parametros.put("pDESCRIPCION_ARCHIVO", obj.getDescripcionArchivo());
		parametros.put("pRUTA_ARCHIVO", obj.getRutaArchivo());
		execute(parametros);
	}
}
